home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / dev / misc / OpalDev.lha / C / opallib.h next >
C/C++ Source or Header  |  1992-11-05  |  17KB  |  460 lines

  1.  
  2. /* opal.library C header file
  3.  */
  4.  
  5.  
  6. #ifndef    OPALLIB_H
  7. #define    OPALLIB_H
  8.  
  9. #ifndef    EXEC_TYPES_H
  10. #include "exec/types.h"
  11. #endif
  12.  
  13. #ifndef LIBRARIES_DOS_H
  14. #include "libraries/dos.h"
  15. #endif
  16.  
  17. #define MAXCOPROINS    290    /* Number of CoPro instructions        */
  18.  
  19.     /* Screen flags */
  20.  
  21. #define HIRES24        0x1L    /* High resolution screen.        */
  22. #define ILACE24        0x2L    /* Interlaced screen.            */
  23. #define OVERSCAN24    0x4L    /* Overscan screen.            */
  24. #define NTSC24        0x8L    /* NTSC Screen - Not user definable    */
  25. #define CLOSEABLE24    0x10L    /* Screen is closeable.            */
  26. #define PLANES8        0x20L    /* Screen has 8 bitplanes.        */
  27. #define PLANES15    0x40L    /* Screen has 15 bitplanes.        */
  28. #define CONTROLONLY24    0x2000L    /* Used for updating control bits only    */
  29. #define PALMAP24    0x4000L    /* Screen is in palette mapped mode    */
  30. #define INCHIP24    0x8000L    /* In chip ram - Not user definable    */
  31.  
  32. #define FLAGSMASK24  (CONTROLONLY24|PALMAP24|CLOSEABLE24|PLANES8|PLANES15|\
  33.                 OVERSCAN24|ILACE24|HIRES24)
  34.  
  35.     /* LoadIFF24 Flags */
  36.  
  37. #define FORCE24        1  /* Force conversion of palette mapped to 24 bit */ 
  38. #define KEEPRES24    2  /* Keep the current screen resolution    */
  39. #define LOADMASK24    4  /* Load mask plane if it exists        */
  40. #define VIRTUALSCREEN24    8  /* Load complete image into fast ram        */
  41.  
  42.  
  43.     /* SaveIFF24 Flags */
  44.  
  45. #define OVFASTFORMAT    1    /* Save as opalvision fast format    */
  46. #define NOTHUMBNAIL    4    /* Inhibit thumbnail chunk        */
  47. #define SAVEMASK24    8    /* Save MaskPlane with image        */
  48.  
  49.     /* Config Flags */
  50.  
  51. #define OVCF_OPALVISION    0x1    /* Display board is an OpalVision    */
  52. #define OVCF_COLORBURST    0x2    /* Display board is a ColorBurst    */
  53.  
  54.     /* Coprocessor bits. */
  55.  
  56. #define VIDMODE0    0x01    /* Video control bit 1 (S0)        */
  57. #define VIDMODE1    0x02    /* Video control bit 1 (S1)        */
  58. #define DISPLAYBANK2    0x04    /* Select display bank 2        */
  59. #define HIRESDISP    0x08    /* Enable hi-res display        */
  60. #define DUALDISPLAY    0x10    /* Select dual display mode (active low)*/
  61. #define OVPRI        0x20    /* Set OpalVision priority        */
  62. #define PRISTENCIL    0x40    /* Enable priority stencil        */
  63. #define ADDLOAD        0x80    /* Address load bit. Active low        */
  64.  
  65.  
  66. #define ADDLOAD_B    7
  67. #define PRISTENCIL_B    6
  68. #define OVPRI_B        5
  69. #define DUALDISPLAY_B    4
  70. #define HIRESDISP_B    3
  71. #define DISPLAYBANK2_B    2
  72. #define VIDMODE1_B    1
  73. #define VIDMODE0_B    0
  74.  
  75.  
  76.     /* Control line bits */
  77.  
  78. #define VALID0        0x00001
  79. #define VALID1        0x00002
  80. #define VALID2        0x00004
  81. #define VALID3        0x00008
  82. #define WREN        0x00010
  83. #define COL_COPRO    0x00020
  84. #define AUTO        0x00040
  85. #define DUALPLAYFIELD    0x00080
  86. #define FIELD        0x00100
  87. #define AUTOFIELD    0x00200
  88. #define DISPLAYLATCH    0x00400
  89. #define FRAMEGRAB    0x00800
  90. #define RWR1        0x01000
  91. #define RWR2        0x02000
  92. #define GWR1        0x04000
  93. #define GWR2        0x08000
  94. #define BWR1        0x10000
  95. #define BWR2        0x20000
  96. #define VLSIPROG    0x40000
  97. #define FREEZEFRAME    0x80000
  98.  
  99. #define VALID0_B    0
  100. #define VALID1_B    1
  101. #define VALID2_B    2
  102. #define VALID3_B    3
  103. #define WREN_B        4
  104. #define COL_COPRO_B    5
  105. #define AUTO_B        6
  106. #define DUALPLAYFIELD_B    7
  107. #define FIELD_B        8
  108. #define AUTOFIELD_B    9
  109. #define DISPLAYLATCH_B    10
  110. #define FRAMEGRAB_B    11
  111. #define RWR1_B        12
  112. #define RWR2_B        13
  113. #define GWR1_B        14
  114. #define GWR2_B        15
  115. #define BWR1_B        16
  116. #define BWR2_B        17
  117. #define VLSIPROG_B    18
  118. #define FREEZEFRAME_B    19
  119.  
  120. #define NUMCONTROLBITS    20
  121. #define VALIDCODE    5
  122.  
  123.  
  124.  
  125.     /* Some useful macros */
  126.  
  127.     /* Set pen value */
  128.  
  129. #define SetPen24(S,R,G,B) {(S)->Pen_R=R; (S)->Pen_G=G; (S)->Pen_B=B;}
  130. #define SetPen15(S,R,G,B) {(S)->Pen_R=(((R)<<2)|(((G)&0x18)>>3));\
  131.                 (S)->Pen_G=((B)|((G)<<5));}
  132. #define SetPen8P(S,Col)      {(S)->Pen_R=Col;}
  133. #define SetPen8(S,R,G,B)  {(S)->Pen_R=(((B)&3)|(((G)&7)<<2)|(((R)&7)<<5));}
  134.  
  135.     /* Playfield & Priority stencil pens */
  136.  
  137. #define SetPFPen(S,State) {(S)->Pen_R=State;}
  138. #define SetPRPen(S,State) {(S)->Pen_R=State;}
  139.  
  140.     /* return current pen value */
  141.  
  142. #define GetPen24(S,R,G,B) {R=(S)->Pen_R;G=(S)->Pen_G; B=(S)->Pen_B;}
  143. #define GetPen15(S,R,G,B) {R=(S)->Pen_R>>2;\
  144.               G=((((S)->Pen_R&3)<<3)|(((S)->Pen_G&0xE0)>>5));\
  145.               B=(S)->Pen_G&0x1F;}
  146. #define GetPen8P(S,Col)      {Col=(S)->Pen_R;}
  147. #define GetPen8(S,R,G,B)  {R=((S)->Pen_R&0xE0)>>5; G=((S)->Pen_R&0x1C)>>2;\
  148.               B=(S)->Pen_R&3;}
  149.  
  150.     /* Get return value from ReadPixel24() */
  151.  
  152. #define GetCol24(S,R,G,B) {R=(S)->Red;G=(S)->Green; B=(S)->Blue;}
  153. #define GetCol15(S,R,G,B) {R=(S)->Red>>2;\
  154.               G=((((S)->Red&3)<<3)|(((S)->Green&0xE0)>>5));\
  155.               B=(S)->Green&0x1F;}
  156. #define GetCol8P(S,Col)      {Col=(S)->Red;}
  157. #define GetCol8(S,R,G,B)  {R=((S)->Red&0xE0)>>5; G=((S)->Red&0x1C)>>2;\
  158.               B=(S)->Red&3;}
  159.  
  160. #define LoadImage24 LoadIFF24
  161.  
  162. #define DrawCircle24(S,Cx,Cy,r) DrawEllipse24(S,Cx,Cy,r,r);
  163.  
  164.  
  165. struct OpalScreen
  166.     { SHORT        Width;
  167.       SHORT        Height;
  168.       SHORT        Depth;
  169.       SHORT        ClipX1,ClipY1;
  170.       SHORT        ClipX2,ClipY2;
  171.       SHORT        BytesPerLine;
  172.       UWORD     Flags;
  173.       SHORT        RelX;
  174.       SHORT        RelY;
  175.       struct MsgPort *UserPort;
  176.       SHORT        MaxFrames;
  177.       SHORT        VStart;
  178.       SHORT        CoProOffset;
  179.       SHORT        LastWait;
  180.       UWORD        LastCoProIns;
  181.       UBYTE        *BitPlanes[24];
  182.       UBYTE        *MaskPlane;
  183.       ULONG        AddressReg;
  184.       UBYTE        UpdateDelay;
  185.       UBYTE        PalLoadAddress;
  186.       UBYTE        PixelReadMask;
  187.       UBYTE        CommandReg;
  188.       UBYTE        Palette[3*256];
  189.       UBYTE        Pen_R;
  190.       UBYTE        Pen_G;
  191.       UBYTE        Pen_B;
  192.       UBYTE        Red;
  193.       UBYTE        Green;
  194.       UBYTE        Blue;
  195.       UBYTE        CoProData[MAXCOPROINS];
  196.       SHORT        Modulo;
  197.       UBYTE        Reserved[38];
  198. #ifdef OPAL_PRIVATE
  199.       ULONG        CopList_Cycle[12];
  200.       UBYTE        Update_Cycles;
  201.       UBYTE        Pad;
  202. #endif
  203.     };
  204.  
  205.  
  206.     /* Error return codes */
  207.  
  208. #define OL_ERR_OUTOFMEM        1
  209. #define OL_ERR_OPENFILE        2
  210. #define OL_ERR_NOTIFF        3
  211. #define OL_ERR_FORMATUNKNOWN    3
  212. #define OL_ERR_NOTILBM        4
  213. #define OL_ERR_FILEREAD        5
  214. #define OL_ERR_FILEWRITE    6
  215. #define OL_ERR_BADIFF        7
  216. #define OL_ERR_CANTCLOSE    8
  217. #define OL_ERR_OPENSCREEN    9
  218. #define OL_ERR_NOTHUMBNAIL    10
  219. #define OL_ERR_BADJPEG        11
  220. #define OL_ERR_UNSUPPORTED    12
  221. #define OL_ERR_CTRLC        13
  222. #define OL_ERR_MAXERR        40
  223.  
  224.  
  225.  
  226. struct OpalScreen *OpenScreen24 (long ScreenModes);
  227. BOOL CloseScreen24 (void);
  228. long WritePixel24 (struct OpalScreen *Scrn, long x, long y);
  229. long ReadPixel24 (struct OpalScreen *Scrn, long x, long y);
  230. void ClearScreen24 (struct OpalScreen *Scrn);
  231. void ILBMtoOV (struct OpalScreen *Scrn, UBYTE *ILBMData, long SourceWidth,
  232.          long Lines, long TopLine, long Planes);
  233. void UpdateDelay24 (long Frames);
  234. void Refresh24 (void);
  235. BOOL SetDisplayBottom24 (long Bottom);
  236. void ClearDisplayBottom24 (void);
  237. void SetSprite24 (USHORT *Sprite, long SpriteNum);
  238. void AmigaPriority (void);
  239. void OVPriority (void);
  240. void DualDisplay24 (void);
  241. void SingleDisplay24 (void);
  242. void AppendCopper24 (UWORD *CopperArray[]);
  243. void RectFill24
  244.     (struct OpalScreen *Scrn, long x1, long y1, long x2, long y2);
  245. void UpdateCoPro24 (void);
  246. void SetControlBit24 (long List, long Bit, long State);
  247. void PaletteMap24 (long Map);
  248. void UpdatePalette24 (void);
  249. void Scroll24 (long Dx, long Dy);
  250. long LoadIFF24 (struct OpalScreen *Scrn, char *FileName, long Flags);
  251. void SetScreen24 (struct OpalScreen *Scrn);
  252. long SaveIFF24 (struct OpalScreen *Scrn, char *FileName,
  253.          long (* ChunkFunc)(), long Flags);
  254. struct OpalScreen *CreateScreen24 (long ScreenModes, long Width, long Height);
  255. void FreeScreen24 (struct OpalScreen *Scrn);
  256. void UpdateRegs24 (void);
  257. void SetLoadAddress24 (void);
  258. void RGBtoOV (struct OpalScreen *Scrn, UBYTE *RGBData[3],
  259.                  long x, long y, long w, long h);
  260. struct OpalScreen *ActiveScreen24 (void);
  261. void FadeIn24 (long Time);
  262. void FadeOut24 (long Time);
  263. void ClearQuick24 (void);
  264. long WriteThumbnail24 (struct OpalScreen *Scrn, BPTR File);
  265. void SetRGB24 (long Entry, long R, long G, long B);
  266. void DrawLine24 (struct OpalScreen *Scrn, long X1, long Y1, long X2, long y2);
  267. void StopUpdate24 (void);
  268. long WritePFPixel24 (struct OpalScreen *Scrn, long x, long y);
  269. long WritePRPixel24 (struct OpalScreen *Scrn, long x, long y);
  270. long OVtoRGB (struct OpalScreen *Scrn, UBYTE *RGBData[],
  271.                  long x, long y, long w, long h);
  272. void OVtoILBM (struct OpalScreen *Scrn, UBYTE *ILBMData, long DestWidth,
  273.             long Lines, long TopLine);
  274. void UpdateAll24 (void);
  275. void UpdatePFStencil24 (void);
  276. void EnablePRStencil24 (void);
  277. void DisablePRStencil24 (void);
  278. void ClearPRStencil24 (struct OpalScreen *Scrn);
  279. void SetPRStencil24 (struct OpalScreen *Scrn);
  280. void DisplayFrame24 (long Frame);
  281. void WriteFrame24 (long Frame);
  282. void BitPlanetoOV (struct OpalScreen *Scrn, UBYTE *SrcPlanes[],
  283.         long BytesPerLine, long Lines, long TopLine, long SrcDepth);
  284. void SetCoPro24 (long Line, long Instruction);
  285. void RegWait24 (void);
  286. void DualPlayField24 (void);
  287. void SinglePlayField24 (void);
  288. void ClearPFStencil24 (struct OpalScreen *Scrn);
  289. void SetPFStencil24 (struct OpalScreen *Scrn);
  290. long ReadPRPixel24 (struct OpalScreen *Scrn, long x, long y);
  291. long ReadPFPixel24 (struct OpalScreen *Scrn, long x, long y);
  292. void OVtoBitPlane (struct OpalScreen *Scrn, UBYTE *DestPlanes[],
  293.         long DestWidth, long Lines, long TopLine);
  294. void FreezeFrame24 (BOOL Freeze);
  295. struct OpalScreen *LowMemUpdate24 (struct OpalScreen *Scrn,long Frame);
  296. long DisplayThumbnail24 (struct OpalScreen *Scrn, char *FileName, long x,long y);
  297. long Config24 (void);
  298. void AutoSync24 (BOOL Sync);
  299. void DrawEllipse24 (struct OpalScreen *Scrn, long Cx, long Cy, long a, long b);
  300. void LatchDisplay24 (BOOL Latch);
  301. void SetHires24 (long TopLine, long Lines);
  302. void SetLores24 (long TopLine, long Lines);
  303. BOOL DownLoadFrame24 (struct OpalScreen *OScrn,long x,long y,long w,long h);
  304. long SaveJPEG24 (struct OpalScreen *OScrn, char *FileName, long Flags, long Quality);
  305. struct OpalScreen *LowMem2Update24 (struct OpalScreen *Scrn,long Frame);
  306. struct OpalScreen *LowMemRGB24 (long ScreenModes,long WriteFrame,long Width,long Height, long Modulo, UBYTE *RGBPlanes[3]);
  307.  
  308. #ifdef    AZTEC_C
  309. #pragma amicall(OpalBase,0x1e,OpenScreen24(D0))
  310. #pragma amicall(OpalBase,0x24,CloseScreen24())
  311. #pragma amicall(OpalBase,0x2a,WritePixel24(A0,D0,D1))
  312. #pragma amicall(OpalBase,0x30,ReadPixel24(A0,D0,D1))
  313. #pragma amicall(OpalBase,0x36,ClearScreen24(A0))
  314. #pragma amicall(OpalBase,0x3c,ILBMtoOV(A0,A1,D0,D1,D2,D3))
  315. #pragma amicall(OpalBase,0x42,UpdateDelay24(D0))
  316. #pragma amicall(OpalBase,0x48,Refresh24())
  317. #pragma amicall(OpalBase,0x4e,SetDisplayBottom24(D0))
  318. #pragma amicall(OpalBase,0x54,ClearDisplayBottom24())
  319. #pragma amicall(OpalBase,0x5a,SetSprite24(A0,D0))
  320. #pragma amicall(OpalBase,0x60,AmigaPriority())
  321. #pragma amicall(OpalBase,0x66,OVPriority())
  322. #pragma amicall(OpalBase,0x6c,DualDisplay24())
  323. #pragma amicall(OpalBase,0x72,SingleDisplay24())
  324. #pragma amicall(OpalBase,0x78,AppendCopper24(A0))
  325. #pragma amicall(OpalBase,0x7e,RectFill24(A0,D0,D1,D2,D3))
  326. #pragma amicall(OpalBase,0x84,UpdateCoPro24())
  327. #pragma amicall(OpalBase,0x8A,SetControlBit24(D0,D1,D2))
  328. #pragma amicall(OpalBase,0x90,PaletteMap24(D0))
  329. #pragma amicall(OpalBase,0x96,UpdatePalette24())
  330. #pragma amicall(OpalBase,0x9c,Scroll24(D0,D1))
  331. #pragma amicall(OpalBase,0xa2,LoadIFF24(A0,A1,D0))
  332. #pragma amicall(OpalBase,0xa8,SetScreen24(A0))
  333. #pragma amicall(OpalBase,0xae,SaveIFF24(A0,A1,A2,D0))
  334. #pragma amicall(OpalBase,0xb4,CreateScreen24(D0,D1,D2))
  335. #pragma amicall(OpalBase,0xba,FreeScreen24(A0))
  336. #pragma amicall(OpalBase,0xc0,UpdateRegs24())
  337. #pragma amicall(OpalBase,0xc6,SetLoadAddress24())
  338. #pragma amicall(OpalBase,0xcc,RGBtoOV(A0,A1,D0,D1,D2,D3))
  339. #pragma amicall(OpalBase,0xd2,ActiveScreen24())
  340. #pragma amicall(OpalBase,0xd8,FadeIn24(D0))
  341. #pragma amicall(OpalBase,0xde,FadeOut24(D0))
  342. #pragma amicall(OpalBase,0xe4,ClearQuick24())
  343. #pragma amicall(OpalBase,0xea,WriteThumbnail24(A0,A1))
  344. #pragma amicall(OpalBase,0xf0,SetRGB24(D0,D1,D2,D3))
  345. #pragma amicall(OpalBase,0xf6,DrawLine24(A0,D0,D1,D2,D3))
  346. #pragma amicall(OpalBase,0xfc,StopUpdate24())
  347. #pragma amicall(OpalBase,0x102,WritePFPixel24(A0,D0,D1))
  348. #pragma amicall(OpalBase,0x108,WritePRPixel24(A0,D0,D1))
  349. #pragma amicall(OpalBase,0x10e,OVtoRGB(A0,A1,D0,D1,D2,D3))
  350. #pragma amicall(OpalBase,0x114,OVtoILBM(A0,A1,D0,D1,D2))
  351. #pragma amicall(OpalBase,0x11a,UpdateAll24())
  352. #pragma amicall(OpalBase,0x120,UpdatePFStencil24())
  353. #pragma amicall(OpalBase,0x126,EnablePRStencil24())
  354. #pragma amicall(OpalBase,0x12c,DisablePRStencil24())
  355. #pragma amicall(OpalBase,0x132,ClearPRStencil24(A0))
  356. #pragma amicall(OpalBase,0x138,SetPRStencil24(A0))
  357. #pragma amicall(OpalBase,0x13e,DisplayFrame24(D0))
  358. #pragma amicall(OpalBase,0x144,WriteFrame24(D0))
  359. #pragma amicall(OpalBase,0x14a,BitPlanetoOV(A0,A1,D0,D1,D2,D3))
  360. #pragma amicall(OpalBase,0x150,SetCoPro24(D0,D1))
  361. #pragma amicall(OpalBase,0x156,RegWait24())
  362. #pragma amicall(OpalBase,0x15c,DualPlayField24())
  363. #pragma amicall(OpalBase,0x162,SinglePlayField24())
  364. #pragma amicall(OpalBase,0x168,ClearPFStencil24(A0))
  365. #pragma amicall(OpalBase,0x16e,SetPFStencil24(A0))
  366. #pragma amicall(OpalBase,0x174,ReadPRPixel24(A0,D0,D1))
  367. #pragma amicall(OpalBase,0x17a,ReadPFPixel24(A0,D0,D1))
  368. #pragma amicall(OpalBase,0x180,OVtoBitPlane(A0,A1,D0,D1,D2))
  369. #pragma amicall(OpalBase,0x186,FreezeFrame24(D0))
  370. #pragma amicall(OpalBase,0x18c,LowMemUpdate24(A0,D0))
  371. #pragma amicall(OpalBase,0x192,DisplayThumbnail24(A0,A1,D0,D1))
  372. #pragma amicall(OpalBase,0x198,Config24())
  373. #pragma amicall(OpalBase,0x19e,AutoSync24(D0))
  374. #pragma amicall(OpalBase,0x1a4,DrawEllipse24(A0,D0,D1,D2,D3))
  375. #pragma amicall(OpalBase,0x1aa,LatchDisplay24(D0))
  376. #pragma amicall(OpalBase,0x1b0,SetHires24(D0,D1))
  377. #pragma amicall(OpalBase,0x1b6,SetLores24(D0,D1))
  378. #pragma amicall(OpalBase,0x1bc,DownLoadFrame24(A0,D0,D1,D2,D3))
  379. #pragma amicall(OpalBase,0x1c2,SaveJPEG24(A0,A1,D0,D1))
  380. #pragma amicall(OpalBase,0x1c8,LowMem2Update24(A0,D0))
  381. #pragma amicall(OpalBase,0x1ce,LowMemRGB24(D0,D1,D2,D3,D4,A0))
  382. #else
  383. #pragma libcall OpalBase OpenScreen24 1e 1
  384. #pragma libcall OpalBase CloseScreen24 24 0
  385. #pragma libcall OpalBase WritePixel24 2a 10803
  386. #pragma libcall OpalBase ReadPixel24 30 10803
  387. #pragma libcall OpalBase ClearScreen24 36 801
  388. #pragma libcall OpalBase ILBMtoOV 3c 32109806
  389. #pragma libcall OpalBase UpdateDelay24 42 1
  390. #pragma libcall OpalBase Refresh24 48 0
  391. #pragma libcall OpalBase SetDisplayBottom24 4e 1
  392. #pragma libcall OpalBase ClearDisplayBottom24 54 0
  393. #pragma libcall OpalBase SetSprite24 5a 802
  394. #pragma libcall OpalBase AmigaPriority 60 0
  395. #pragma libcall OpalBase OVPriority 66 0
  396. #pragma libcall OpalBase DualDisplay24 6c 0
  397. #pragma libcall OpalBase SingleDisplay24 72 0
  398. #pragma libcall OpalBase AppendCopper24 78 801
  399. #pragma libcall OpalBase RectFill24 7e 3210805
  400. #pragma libcall OpalBase UpdateCoPro24 84 0
  401. #pragma libcall OpalBase SetControlBit24 8a 21003
  402. #pragma libcall OpalBase PaletteMap24 90 1
  403. #pragma libcall OpalBase UpdatePalette24 96 0
  404. #pragma libcall OpalBase Scroll24 9c 1002
  405. #pragma libcall OpalBase LoadIFF24 a2 9803
  406. #pragma libcall OpalBase SetScreen24 a8 801
  407. #pragma libcall OpalBase SaveIFF24 ae a9804
  408. #pragma libcall OpalBase CreateScreen24 b4 21003
  409. #pragma libcall OpalBase FreeScreen24 ba 801
  410. #pragma libcall OpalBase UpdateRegs24 c0 0
  411. #pragma libcall OpalBase SetLoadAddress24 c6 0
  412. #pragma libcall OpalBase RGBtoOV cc 32109806
  413. #pragma libcall OpalBase ActiveScreen24 d2 0
  414. #pragma libcall OpalBase FadeIn24 d8 1
  415. #pragma libcall OpalBase FadeOut24 de 1
  416. #pragma libcall OpalBase ClearQuick24 e4 0
  417. #pragma libcall OpalBase WriteThumbnail24 ea 9802
  418. #pragma libcall OpalBase SetRGB24 f0 321004
  419. #pragma libcall OpalBase DrawLine24 f6 3210805
  420. #pragma libcall OpalBase StopUpdate24 fc 0
  421. #pragma libcall OpalBase WritePFPixel24 102 10803
  422. #pragma libcall OpalBase WritePRPixel24 108 10803
  423. #pragma libcall OpalBase OVtoRGB 10e 32109806
  424. #pragma libcall OpalBase OVtoILBM 114 2109805
  425. #pragma libcall OpalBase UpdateAll24 11a 0
  426. #pragma libcall OpalBase UpdatePFStencil24 120 0
  427. #pragma libcall OpalBase EnablePRStencil24 126 0
  428. #pragma libcall OpalBase DisablePRStencil24 12c 0
  429. #pragma libcall OpalBase ClearPRStencil24 132 801
  430. #pragma libcall OpalBase SetPRStencil24 138 801
  431. #pragma libcall OpalBase DisplayFrame24 13e 1
  432. #pragma libcall OpalBase WriteFrame24 144 1
  433. #pragma libcall OpalBase BitPlanetoOV 14a 32109806
  434. #pragma libcall OpalBase SetCoPro24 150 1002
  435. #pragma libcall OpalBase RegWait24 156 0
  436. #pragma libcall OpalBase DualPlayField24 15c 0
  437. #pragma libcall OpalBase SinglePlayField24 162 0
  438. #pragma libcall OpalBase ClearPFStencil24 168 801
  439. #pragma libcall OpalBase SetPFStencil24 16e 801
  440. #pragma libcall OpalBase ReadPRPixel24 174 10803
  441. #pragma libcall OpalBase ReadPFPixel24 17a 10803
  442. #pragma libcall OpalBase OVtoBitPlane 180 2109805
  443. #pragma libcall OpalBase FreezeFrame24 186 1
  444. #pragma libcall OpalBase LowMemUpdate24 18c 802
  445. #pragma libcall OpalBase DisplayThumbnail24 192 109804
  446. #pragma libcall OpalBase Config24 198 0
  447. #pragma libcall OpalBase AutoSync24 19e 1
  448. #pragma libcall OpalBase DrawEllipse24 1a4 3210805
  449. #pragma libcall OpalBase LatchDisplay24 1aa 1
  450. #pragma libcall OpalBase SetHires24 1b0 1002
  451. #pragma libcall OpalBase SetLores24 1b6 1002
  452. #pragma libcall OpalBase DownLoadFrame24 1bc 3210805
  453. #pragma libcall OpalBase SaveJPEG24 1c2 109804
  454. #pragma libcall OpalBase LowMem2Update24 1c8 802
  455. #pragma libcall OpalBase LowMemRGB24  1ce 84321006
  456.  
  457. #endif
  458.  
  459. #endif
  460.